#include <iostream>
#include <time.h>
#include "hash.h"
using namespace std;

template<class T>
struct kofT
{
	const T& operator()(const T& x)
	{
		return x;
	}
};
//int main()
//{
//	dzp::hash<int, int, kofT<int>> a;
//	a.insert(1);
//	a.insert(21);
//	a.insert(51);
//	a.insert(11);
//	a.insert(7);
//	a.insert(8);
//	a.insert(61);
//	a.insert(9);
//	a.insert(75);
//	a.insert(99);
//	a.insert(65);
//
//	cout << a.find(51)->_data << endl;
//	cout << a.erase(51) << endl;
//	cout << a.erase(51) << endl;
//
//	return 0;
//}
int main()
{
	srand(time(0));
	dzp::hash<int, int, kofT<int >> a;

	for (int j = 0; j < 10000; j++)
	{
		int i = rand();
		a.insert(i);
		cout<<a.find(i)->_data<<endl;
	}
	

	return 0;
}